package com.sailing.xjpb.ipaas.client.translate.annotation;

import com.sailing.xjpb.ipaas.client.translate.enumer.IpaasOrgFieldName;

import java.lang.annotation.*;

/**
 * 根据组织
 *
 * @author YaoWei
 * createDate: 2020/11/25 18:57
 */
@Target({ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
@Inherited
public @interface IpaasOrgField {

    /**
     * 指定orgId/orgCode字段
     */
    String sourceField();

    /**
     * 从com.sailing.jd.ipaas.client.entity.bo.SipOrganizationBO的哪个字段作为翻译值
     * 默认翻译组织机构名称
     *
     * @return 翻译的字段名
     */
    IpaasOrgFieldName fieldName() default IpaasOrgFieldName.ORG_NAME;

    /**
     * 默认使用orgId进行查询翻译
     */
    SourceFieldType sourceFieldType() default SourceFieldType.ORG_ID;

}
